package edu.gatech.cc.concolic.expression;


public abstract class SymbolicVariable implements SymbolicExpression {

	private final String name;
	
	public int l;
	public int h;
	public int lr;
	public int hr;
	
	public SymbolicVariable(String name) {
		this.name = name;

		l = 0;
		h = 255;
		lr = 256;
		hr = 256;
	}

	public String name() {
		return name;
	}
	
	public String toString() {
		return name;
	}

	public int hashCode() {
		int result = 17;
		result = 37 * result + name.hashCode();
		return result;
	}

	public boolean equals(Object o) {
		if (this == o) return true;
		if (o == null || !(getClass().isInstance(o))) return false;

		SymbolicVariable other = (SymbolicVariable) o;

		return name.equals(other.name);
	}
}
